package com.xbongbong.message.domain.entity;/*/*/

import com.xbongbong.paas.toolbox.util.DateUtil;
import com.xbongbong.paas.toolbox.wrap.Entity;
import com.xbongbong.paas.toolbox.wrap.IEntity;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * PushSetEntity消息设置实体
 *
 * @author GuoJun.HU
 * @since V1.0
 * @date 2019/2/19 10:48
 */
@Setter
@Getter
@ToString
public class PushSetEntity extends Entity implements IEntity{
    private Integer id;
    /**公司ID*/
    private String corpid;
    /**模块标识*/
    private Integer refEntity;
    /**提醒字段（非指定字段提醒时为空）*/
    private String attrEntity;
    /**推送类型*/
    private Integer type;
    /**推送子类型*/
    private Integer subType;
    /**推送对象
	/*{
		"type": "|1|2|",				特殊类型PushObjectTypeEnum
		"role": {				推送的角色
			"enable": 1,
			"value": ["10",
			"30"]
		},
		"dep": {				推送的部门
			"enable": 0,
			"value": ["2",
			"5"]
		},
		"user": {				推送的指定人
			"enable": 0,
			"value": []
		}
		"manager": {			推送上级主管
			"enable": 0,
			"value": []			主管层级
		}
	}
	*/
    private String pushObject;
    /**{
            "loop": 0,//是否循环
            "time": -1,//推送基准时间（可无效）
            "period": 432000,//提前或延后的时间
            "timeIntervalType": 0,//隔天、隔周、隔月、隔年
            "timeType": 1//即时、提前、推后
        }
     */
    private String pushTime;
    /**是否开启推送*/
    private Integer enable;
    /**添加时间*/
    private Integer addTime;
    /**修改时间*/
    private Integer updateTime;
    /** 删除标志*/
    private Integer del;

    /**
     *推送名称
     */
    private String title;
    /**
     * 推送类型说明
     */
    private String content;

    /**
     * 模板id paas为formId
     */
    private Long templateId;

    public PushSetEntity() {
        this.updateTime = DateUtil.getInt();
        this.del = 0;
    }
}
